package com.jdzy.student.controller;
import com.jdzy.model.common.vos.Result;
import com.jdzy.model.student.dtos.GradeDto;
import com.jdzy.student.service.*;
import io.swagger.annotations.Api;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;


@RestController
@CrossOrigin
@Slf4j
@RequestMapping("api/pk")
@Api(value = "Pk的controller类")
@RequiredArgsConstructor
public class PkController {
    private final PkService pkService;

    //分页查询学生成绩排行表（班级）
    @PostMapping("/getGradeByStuId/{stuId}/{page}/{size}")
    public Result getGradeByStuId(@PathVariable String stuId, @PathVariable Integer page
            , @PathVariable Integer size, @RequestBody GradeDto gradeDto){
        log.info("根据学号获取其排名信息(班级),参数:{},{},{},{}",stuId,page,size,gradeDto);
        return pkService.getGradeByStuId(stuId,page,size,gradeDto);
    }
    //分页查询学生成绩排行表（专业）
    @PostMapping("/getStuIdByProfession/{stuId}/{page}/{size}")
    public Result getStuIdByProfession(@PathVariable String stuId, @PathVariable Integer page
            , @PathVariable Integer size, @RequestBody GradeDto gradeDto){
        log.info("根据学号获取其排名信息(专业),参数:{},{},{},{}",stuId,page,size,gradeDto);
        return pkService.getStuIdByProfession(stuId,page,size,gradeDto);
    }

   //根据前端传来的两个stu_id查询两个学生之间的pk信息-并根据成绩大小返回输赢
    @PostMapping("/getPkInfo/{stuId1}/{stuId2}")
    public Result getPkInfo(@PathVariable String stuId1,@PathVariable String stuId2){
        log.info("根据学号获取其排名信息,参数:{},{}",stuId1,stuId2);
        return pkService.getPkInfo(stuId1,stuId2);
    }



}
